<?php

namespace YouBaoLian\Application\Request;

use YouBaoLian\Application\Response\RenewalResponse;
use YouBaoLian\Application\Response\VehicleModelResponse;

class VehicleModelRequest extends Request
{

    /**
     * 品牌型号
     * @var string $brand
     */
    private $brand;

    /**
     * 城市编码
     * @var string $cityCode
     */
    private $cityCode;

    /**
     * 报价配置ID
     * @var string $configId
     */
    private $configId;

    /**
     * 发动机号
     * @var string $engineNo
     */
    private $engineNo;

    /**
     * 初登日期
     * @var string $firstRegisterDate
     */
    private $firstRegisterDate;

    /**
     * 车架号
     * @var string $frameNo
     */
    private $frameNo;

    /**
     * 车牌号
     * @var string $licenseNo
     */
    private $licenseNo;

    /**
     * @var string $method
     */
    protected $method = 'iebcVehicle.model';

    /**
     * @var string $response
     */
    protected $response = VehicleModelResponse::class;

    /**
     * @return string
     */
    public function getMethod(): string
    {
        return $this->method;
    }

    /**
     * @return array
     */
    public function getBizContent(): array
    {
        $this->bizContent = [
            'brand' => $this->brand,
            'cityCode' => $this->cityCode,
            'configId' => $this->configId,
            'engineNo' => $this->engineNo,
            'firstRegisterDate' => $this->firstRegisterDate,
            'licenseNo' => $this->licenseNo,
            'vehicleFrameNo' => $this->frameNo,
        ];
        return $this->bizContent;
    }

    /**
     * @return string
     */
    public function getCityCode(): string
    {
        return $this->cityCode;
    }

    /**
     * @param string $cityCode
     */
    public function setCityCode(string $cityCode): void
    {
        $this->cityCode = $cityCode;

    }

    /**
     * @return string
     */
    public function getEngineNo(): string
    {
        return $this->engineNo;
    }

    /**
     * @param string $engineNo
     */
    public function setEngineNo(string $engineNo): void
    {
        $this->engineNo = $engineNo;

    }

    /**
     * @return string
     */
    public function getConfigId(): string
    {
        return $this->configId;
    }

    /**
     * @param string $configId
     */
    public function setConfigId(string $configId): void
    {
        $this->configId = $configId;

    }

    /**
     * @return string
     */
    public function getFrameNo(): string
    {
        return $this->frameNo;
    }

    /**
     * @param string $frameNo
     */
    public function setFrameNo(string $frameNo): void
    {
        $this->frameNo = $frameNo;

    }

    /**
     * @return string
     */
    public function getLicenseNo(): string
    {
        return $this->licenseNo;
    }

    /**
     * @param string $licenseNo
     */
    public function setLicenseNo(string $licenseNo): void
    {
        $this->licenseNo = $licenseNo;

    }

    /**
     * @return string
     */
    public function getBrand(): string
    {
        return $this->brand;
    }

    /**
     * @param string $brand
     */
    public function setBrand(string $brand): void
    {
        $this->brand = $brand;
    }

    /**
     * @return string
     */
    public function getFirstRegisterDate(): string
    {
        return $this->firstRegisterDate;
    }

    /**
     * @param string $firstRegisterDate
     */
    public function setFirstRegisterDate(string $firstRegisterDate): void
    {
        $this->firstRegisterDate = $firstRegisterDate;
    }


}
